/*
 * game.h
 *
 *  Created on: 15 nov. 2010
 *      Author: Nicolas Aucouturier, Laurent Reveillere
 */
#ifndef GAME_H_
#define GAME_H_

#include <stdio.h>
#include <stdlib.h>

#include "SDL.h"
#include "SDL_image.h"

#include "../include/constant.h"
#include "../include/misc.h"

#include "../include/map.h"
#include "../include/player.h"
#include "../include/level.h"


typedef struct s_game * t_game;

// Create a new game
extern t_game game_new();

//
extern void game_free(t_game game);

// Return the player of the current game
extern t_player game_get_player(t_game game);

// Return the current level
extern t_level game_get_curr_level(t_game game);

// Display the game of the screen
extern void game_display(t_game game, SDL_Surface *screen);

// update
extern int game_update(t_game game);

#endif /* GAME_H_ */
